/**
 *  hystrix 既可以放在提供者也可以放在消费者中
 *  https://blog.csdn.net/ko0491/article/details/108132114
 *
 *      @HystrixCommand(
 *             commandProperties ={
 *                     //请求超时时间
 *                     @HystrixProperty(name = "execution.isolation.thread.timeoutInMilliseconds",value ="3000" ),
 *                     //统计窗口内的定义
 *                     @HystrixProperty(name =
 *                             "metrics.rollingStats.timeInMilliseconds",value = "8000"),
 *                     //最小请求数
 *                     @HystrixProperty(name =
 *                             "circuitBreaker.requestVolumeThreshold",value = "2"),
 *                     //错误的请求比例
 *                     @HystrixProperty(name =
 *                             "circuitBreaker.errorThresholdPercentage",value = "50"),
 *                     //自我修复的活窗口时长
 *                     @HystrixProperty(name =
 *                             "circuitBreaker.sleepWindowInMilliseconds",value = "3000")
 *             }
 *             ,fallbackMethod ="myFallBack" //回退方法
 *             //线程池标识，要标识为唯一
 *             ,threadPoolKey = "findRibbonResumeOpenStateTimeout"
 *             //线程池属性
 *             ,threadPoolProperties = {
 *                     //核心纯种
 *                     @HystrixProperty(name = "coreSize",value ="1" ),
 *             //最大等待队列长度
 *             @HystrixProperty(name = "maxQueueSize",value ="20" )
 *     }
 *     )
 *
 *
 *
 */